#pragma once
#include<SDL2/SDL.h>
#include<SDL2/SDL_image.h>
#include "SDL2/SDL_ttf.h"
#include"Entity.h"

//渲染窗口类
class RenderWindow
{
private:
    SDL_Window *window;//窗口指针
    SDL_Renderer *renderer;//渲染器

public:
    //创建窗口，标题 长度 高度
    void create(const char *p_title,int p_w,int p_h);
    //加载一个纹理,纹理路径
    SDL_Texture * loadTexture(const char*p_filePath);
    //窗口的销毁
    void destroy();
    //窗口的背景
    void clear();
    //窗口的展示
    void display();
    //在任何位置渲染纹理
    void render(float p_x,float p_y,SDL_Texture *p_tex);
    //在当前位置渲染实体
    void render(Entity &p_entity);
    //在任何位置绘制文字
    void render(float p_x, float p_y, const char* p_text, TTF_Font* font, SDL_Color textColor);
};


